package com.chinawayltd.ews.sample.service.algorithm;

import java.util.Date;

import com.chinawayltd.ews.sample.model.TInterfaceLog;
import com.chinawayltd.ews.sample.model.order.ExecuteDispatchVO;
import com.chinawayltd.ews.sample.util.TaskDispatchModel;

/**
 * @program: greeProject
 * @description:
 * @author: xiazj
 * @create: 2018-05-09 17:08
 **/
public interface DispatchAlgorithmService {

    /**
     * 执行订单任务调度
     */
    void executeDispatch(ExecuteDispatchVO queryParam) throws Exception;

    /**
     * 执行任务调度算法,并记录相关日志
     * @param dispatchModel
     * @return token
     */
    String algorithmRun(TaskDispatchModel dispatchModel, Date beginTime, Date endTime) throws Exception;

    /**
     * 查询正调度的状态
     * @author: chenxin
     * @date: 2018年6月11日 下午12:00:09
     * @return
     */
    TInterfaceLog getTaskDispatch();
    /**
     * 修改调度状态
     * @author: chenxin
     * @date: 2018年6月11日 下午12:13:05
     */
	void updateTaskDispatch() throws Exception;

}
